Automatic gift messaging system

ABSTRACT

Electronic and automatic gifting techniques are provided for messages, such as short message service (SMS) or multimedia messaging service (MMS) messages, wherein a gifter designates a recipient for one or more gift(s) offered in a set of gifts. Based on a selection of gift(s), message(s) are automatically generated for the gift(s) having unique identifier(s) that correspond to products or services of an enabling entity that enables the products or services. The message(s) including the unique identifier(s) are then automatically transmitted to the recipient. The unique identifier(s) can be encrypted/hashed with a secret provided by the recipient for an additional layer of security. Any of gifter information, giftee information, context of the service, or external information, such as global positioning service (GPS) location, can be used to make recommendations for gifts in the set of gifts.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims priority to U.S. Provisional Patent ApplicationSer. No. 60/950,715, filed on Jul. 19, 2007, entitled “AUTOMATIC GIFTMESSAGING SYSTEM”, the entirety of which is incorporated herein byreference.

TECHNICAL FIELD

The subject disclosure generally relates to automatic gifting to mobiledevices by selecting one or more gifts via a host environment orservice.

BACKGROUND

The explosive growth in digital content and e-commerce in the ninetiesand the present decade has been accompanied by a number of systems andcorresponding processes for storing, managing and retrieving content invarious electronic formats and in a variety of ways. Storing andmanaging all types of content, including documents, images, video, audioand the like, typically occurs inside of a content managementapplication incorporating some type of a database, and which may beoperated in a private network or on the Internet. With existing systems,retrieving the digital content from oneself or another content ownertypically requires a person either to search for a document on apersonal computer, a private network or the Internet, or to providecontact information (an Internet address, email address or instantmessage identifier) to the content owner so that the digital content canbe delivered, received and enjoyed by that person.

Likewise, commercial transactions on the Internet or over the phonetypically occur in one-to-one setting in which a buyer must conduct atransaction on a seller's own website or by speaking to a live operator.When doing so, the buyer must enter, re-enter or store a significantamount of personal information. Moreover, when a consumer sees somethingoutside the Internet, like a seller's offline advertisement (such as abillboard, magazine or elsewhere), the consumer must almost always visitthe Internet, place a voice telephone call, or visit a seller's physicalsite. In many cases, the buyer is repeatedly shopping from the sameseller and repeating many of the same time-consuming steps to conduct atransaction.

At the same time as the amount of content and e-commerce expandsdramatically, people are increasingly relying on mobile devices as aprimary means to communicate via voice, text, Internet enabled browsersor Internet enabled services like instant messaging. It can beappreciated that mobile devices are generally used because they areportable and convenient, and they are becoming near ubiquitous in theiradoption by people all over the world. Yet, mobile devices, such asmobile phones, are often limited in their ability to navigate, retrieveand act on content or other data due to their portability, andcorresponding limited input interface and storage capacities. With theenormous growth in both content availability and e-commerce, there isthus an emerging need on the part of content owners and commerceproviders to obtain the content or conduct a transaction in a moresimple, convenient, accurate and cost effective way.

Some existing services seek to connect requests for digital content ordata to the direct delivery of content or data to the mobile device forimmediate use or action, which the user may or may not be ready to take.Thus, there is an inherent disconnect in such systems between what theuser may want and the ultimate timing of the delivery of the content bythe content owner. In addition, these services lack an efficient way tocommunicate a request for specific information about which the user hasjust learned. Two main problems thus present themselves with respect tosuch existing systems. First, such systems are inefficient because theyare overloaded with unwanted or irrelevant amounts of digital content ordata. Second, such systems are dramatically limited in terms of theactions that a user may take with respect to such digital content ordata.

Likewise, similar quandaries exist with respect to sending gifts toother people, i.e., today, a person typically searches for a suitablegift from a specific vendor web site, or vendor aggregator, and theninitiates a complex transaction to purchase a gift for a third party.The transaction for sending the gift to the third party includesinformational requirements such as “shipping address,” which can beinconvenient given how mobile the modern workplace is and how oftenpeople move. Some third party vendors also allow gifts to be emailed toa recipient at their email address, rather than physical address, thoughagain complicated transactions are required including a requirement thatan exact email address be provided for the exact recipient. Given mostpeople maintain multiple email addresses, work, personal, etc., whichcome and go even more regularly than physical addresses as people changejobs, internet service providers, etc., it is often difficult to knowwhat the best email address is to use when sending a gift to someone.

The above-described deficiencies of current designs for electronicgifting are merely intended to provide an overview of some of theproblems of today's systems, and are not intended to be exhaustive.Other problems with the state of the art and corresponding benefits ofthe invention may become further apparent upon review of the followingdescription of various non-limiting embodiments of the invention.

SUMMARY

Electronic and automatic gifting techniques are provided for messages,such as SMS or MMS messages, wherein a gifter designates a recipient forone or more gift(s) offered in a set of gifts. Based on a selection ofgift(s), message(s) are automatically generated for the gift(s) havingunique identifier(s) that correspond to products or services of anenabling entity that enables the products or services. The message(s)including the unique identifier(s) are then automatically transmitted tothe recipient. The unique identifier(s) can be encrypted/hashed with asecret provided by the recipient for an additional layer of security. Inother embodiments, any of gifter information, giftee information,context of the service, or external information, such as globalpositioning service (GPS) location, can be used to make recommendationsfor gifts in the set of gifts.

A simplified summary is provided herein to help enable a basic orgeneral understanding of various aspects of exemplary, non-limitingembodiments that follow in the more detailed description and theaccompanying drawings. This summary is not intended, however, as anextensive or exhaustive overview. Instead, the sole purpose of thissummary is to present some concepts related to some exemplarynon-limiting embodiments of the invention in a simplified form as aprelude to the more detailed description of the various embodiments ofthe invention that follows.

BRIEF DESCRIPTION OF THE DRAWINGS

The text message gifting systems and methods of the invention arefurther described with reference to the accompanying drawings in which:

FIGS. 1A, 1B, 1C and 1D are block diagrams illustrating non-limitingembodiments of the invention for message gifting;

FIG. 2 is a block diagram illustrating exemplary aspects of arecommendation engine in accordance with the invention;

FIG. 3A, 3B, 3C, 3D and 3E are block diagrams showing further aspects ofrecommending and sending gifts to a giftee from a gifter via message inaccordance with the invention;

FIG. 4A illustrates various exemplary non-limiting types of gifts thatcan be enabled with message gifting in accordance with the invention;

FIG. 4B illustrates an embodiment of the invention using multimediamessaging service (MMS) gift messages;

FIG. 4C illustrates an embodiment of the invention using wirelessapplication protocol (WAP) gift messages;

FIG. 4D illustrates an embodiment of the invention wherein the gifterindicates a gift for a giftee from a mobile device instead of a hostedenvironment;

FIG. 5 illustrates a system level block diagram of a content managementsystem that can implement message gifting in accordance with the presentinvention;

FIG. 6 illustrates a system level block diagram showing storagerelationships of the system from keywords to content or content links tocontent owners in accordance with an exemplary host environment;

FIG. 7 illustrates exemplary aspects of keyword utilization and storagein accordance with an exemplary host environment;

FIG. 8 illustrates an exemplary non-limiting flow diagram ofkeyword/content association methods of an exemplary host environment;

FIG. 9 illustrates an exemplary non-limiting flow diagram showing userinteractions with content according to retrieval and configurationaspects of an exemplary host environment;

FIG. 10 illustrates an exemplary non-limiting flow diagram showingcontent retrieval via keyword processes enabled by content managementsystems or services as a hosted environment for the invention;

FIG. 11 illustrates an exemplary non-limiting flow diagram showingpurchasing processes enabled by an exemplary hosting environment havingcontent management systems or services;

FIG. 12 illustrates an exemplary non-limiting flow diagram showing groupsharing processes enabled by an exemplary host environment havingcontent management systems or services;

FIG. 13A illustrates an overview of a network environment suitable forservice by embodiments of the invention;

FIG. 13B illustrates a GPRS network architecture that may incorporatevarious aspects of communications in accordance with the invention; and

FIG. 14 illustrates an alternate block diagram of an exemplaryGSM/GPRS/IP multimedia network architecture in which the invention canbe deployed.

DETAILED DESCRIPTION Overview

As discussed in the background, conventional on-line gifting mechanismsrequire the gifter to know current information about their physicaladdress or electronic mail address. Since physical and electronic mailaddresses can change a lot and are thus difficult to remember, whatwould be desirable is a simple way to transmit a gift to a recipientwithout being required to know a lot about the person.

In consideration of this shortcoming and others in the state of the artof electronic gifting, the invention provides a message application orUI control that can be incorporated into a host web site or web serviceinfrastructure. The message application or UI enables a gifter to selectone or more gifts for a friend (any third person) from a list of gifts.Selection of the one or more gifts automatically causes gift message(s)to be sent, via short message service (SMS) message(s), to the friendwithout further action on the part of the gifter, and without anyrequirement of knowing a current email or mailing address for therecipient. In this respect, the host web site or web servicepre-associates the mobile number(s) of giftee(s) to the giftee(s) sothat when a potential gifter designates one of the giftee(s), or whenthe context of a gifter's actions or state on the web site or serviceindicate a particular giftee, gift messages occur automatically to thegifter without requiring the gifter to remember the mobile number(s).

In various non-limiting embodiments, a gift message includes a product,service or gift code that uniquely identifies a corresponding product,service or gift. When the code is presented to the appropriate product,service or gift provider from a mobile device that receives the giftmessage, validation of the gift code by the appropriate providerdetermines whether the gift is valid towards the corresponding product,service or gift. In one embodiment, the gift code can be encrypted orhashed via an algorithm that obscures the gift code information. Withone option, the giftee's mobile phone number can be a number used duringencryption or hashing algorithm execution. With another option, thegiftee can specify a secret, such as a password, to a host system, sothat the secret is automatically used when encrypting/hashing andsending gift messages in accordance with the invention.

Embodiments can include a gift recommendation engine that recommendsgifts to a potential gifter contemplating a gift to a giftee. Therecommended gifts can be based on external information (e.g., time ofday, GPS location), information from the gifter (e.g., gifter selectedcontext, filter for gifts, etc.) and/or information about the giftee(e.g., giftee preferences, transaction history, gift history,demographic information, etc.).

Various embodiments described below are described in the context of textmessages to a recipient mobile device. However, any of the embodimentsherein can employ other kinds of communications as well. For instance,MMS communications can be used as an alternative to SMS communications.For instance, instead of a text message, an MMS message can besubstituted that includes the unique code as described in the textmessage embodiments below. For instance, an MMS message may include avisual card or coupon object including graphics, text, etc. thatincludes a gift code. The gift code can be represented in an imageformat (e.g., overlay graphic, watermark, etc), or text format (e.g.,conventional ASCII codes). Other wireless application protocol (WAP)specifications can also be used for communicating gift codes to arecipient mobile device as well.

Other exemplary aspects and embodiments of automatic gift messaging inaccordance with the invention will become apparent from the followingdetailed description of the invention.

Automatic Gift Messaging

In this regard, in various non-limiting embodiments, as shown in FIG.1A, the invention enables automatic message gifting where a gifter 100selects, via a web site or service 105, one or more gifts to send to anyof one or more third party recipients 120_1, . . . , 120_N in giftmessages 110_1, . . . , 110_N, respectively. In consultation with datastore 140, which includes the mobile numbers 150_1, . . . , 150_N of thethird party recipients 120_1, . . . , 120_N, when a gifter selects agift for one of the third party recipients 120_1, . . . , 120_N, amessage is automatically generated to the target's mobile number thatincludes a unique identifier corresponding to a gift (e.g., product,service, etc.). Then, upon a third party recipient 120_1, . . . , 120_Nreceiving a message gift 110_1, . . . , 110_N, respectively, the thirdparty recipient can redeem the gift at the appropriate gift enabler orprovider 130_1, . . . , 130_N, respectively.

As shown in FIG. 1B, a message gift 110_1 can be automatically generatedin response to gifter 100 selecting a gift at web site or service 105.In various non-limiting embodiments, each message gift 110_1 includesone or more unique product or service codes 170, which, when revealed tothe corresponding gift enabler/provider 130_1 as a valid code, serve ascredit for participating product(s) and/or service(s) offered by giftenable/provider 130_1 to the third party recipient 120_1.

Considering that theft of mobile devices is ever mounting, in effect,when a mobile device is lost or stolen, a receiver of the mobile devicecan use any credit accrued to the mobile device user's account by simplyrevealing the gift codes 170 received by the corresponding mobiledevice. Thus, as shown in FIG. 1C, in one embodiment, the uniqueproduct/service code(s) 172 are encrypted or hashed so that the code isobscured from a casual observer of the message, or reads as nonsense.Then, when third party recipient 120_1 takes the mobile device to thestore, an algorithm can be applied that interprets the message only if apre-condition is met by the presenter of the device.

A non-limiting embodiment of FIG. 1C is illustrated in FIG. 1D. Morespecifically, a unique product or service code automatically deliveredvia message in accordance with the invention may be encrypted or hashedbased on information 174 provided by the third party recipient to thesystem. For instance, information 174 could be the third partyrecipient's mobile device number, or a password selected by the thirdparty recipient. Thus, if third party recipient presents a product codefrom a message gift 110_1, but does not have information 174 thatproperly reveals the underlying code as a valid code to giftenabler/provider 130_1, then third party recipient 120_1 fails to beable to use the code for lacking the secret. In this manner, theftsafeguards are integrated into such embodiments to prevent robbers frombenefiting from gifts on mobile devices.

In yet another embodiment, a lost or stolen mobile device can bereported so that if a thief tries to use one of the unique gift codes inany messages on a stolen mobile device, the unique gift code will signalimproper use of gift codes and invalidate the transaction, and/ortrigger law enforcement activity or notification.

In other non-limiting embodiments of the invention, as illustrated bythe block diagram of FIG. 2, a variety of inputs can be received by arecommendation engine 220 from which information 210 about the giftee,or information 210 about gifts for the giftee, can be ascertained. As adata abstraction, data store 200 represents any and all storage sources,remote or local, from which information 210 is obtained. Data store 200can include feedback 255 from the giftee, either directly or indirectlygiven through participation in the hosted environment. Feedback 255 canbe explicitly or implicitly provided by giftee 250. In this regard, someadditional processing, e.g., collaborative filtering and otherrecommendation algorithms, may or may not be necessary to make feedback255 useful for making a gift recommendation.

For instance, the giftee 250 may provide information about transactionhistory, approved gifts, gift suggestions, preferences, up to datecontact information, demographic or other statistical information, orthe like. Other source 212 for input to data store 200 can includeexternal information such as global positioning system (GPS)information, or calendar/holiday information, e.g., on Halloween,recommend spooky costume gifts.

Then, based on information 255 and/or information 212, information 210about the giftee is received by recommendation engine 220 when anopportunity to gift via text messaging is provided in the hostedenvironment. Recommendation engine 220 operates to make giftrecommendations 230 for the particular giftee 250 to gifter 240. Thegift recommendations can be further based on gifter filters 225, whichspecify further constraints on gifts for possible gifting to giftee 250,e.g., a gifter filter 225 by the gifter can specify that the giftsshould all be in a “sports” category, or as in the exampled describedherein below, that the gifts should all be in a “Simpsons movie”category. Having produced a set, e.g., a list, of gifts fulfilling anyfunction based on one or more of feedback 255, external information 212and/or gifter filters 225, gifter 240 selects a gift from the list. Inturn, since the hosted environment is aware of the delivery mobilenumber for a text message for giftee 250, a gift text message 245 basedon the selected gift is automatically sent to the giftee 250.

FIG. 3A, in turn, illustrates further aspects of an exemplary giftrecommendation engine 300 in accordance with the invention. In thisregard, as mentioned, data store 320 includes gifter data, giftee data,transaction data, external data, etc. on behalf of a system implementinggift recommendation in accordance with the invention, however data store320 is depicted as a single entity merely for convenience, and cancomprise multiple locations, stores, whether remote or local.

In one non-limiting embodiment, there are three main areas ofinformation that can be configured for use in connection withrecommending gifts for automatic gift text messaging in accordance withthe invention. As shown, engine 300 can make recommendations based onone or more functions of external information 302, such as times orevents, e.g., holiday, movie release, time of day, such as “Late atNight,” or similar external information. Engine 300 can also optionallymake recommendations as one or more functions of information implicitlyor explicitly specified by mobile device user 304. For example,information 304 includes transaction history, user preferences, giftinghistory, explicit gift preferences, GPS location of mobile device,demographic or other statistical information, and so on. As a thirdarea, gift recommendation engine 300 can also make recommendations basedon one or more functions information implicitly or explicitly specifiedby a gifter 306. Information 306, for instance, can include informationthat specifies gifts that the gifter enjoys, gifter preferenceinformation, information about past gifts, or any other filter overgifts or gift categories for presentation and recommendation to thegifter.

An automatic text message gifting system or application in accordancewith the invention can be included in any hosted environment. In oneembodiment, the invention includes software that can be included in anyhosted environment, such as a web site, or web service, that enables thehosted environment to permit gift text messaging as described in variousembodiments herein. For instance, a web site or service for gifter 350,as shown in FIG. 3B, can include a text messaging UI component 360 forsending text messages to a designated giftee. Once a gifter sets uppayment information, such as credit card information to cover the gift,when a gifter selects a gift in accordance with the invention, the gifttext message 380 is sent to the giftee automatically. In one embodiment,prior to automatically sending the gift message 380, the gifter pressesa send control 362, which then causes the gift message to be sentautomatically.

As further illustrated in FIG. 3B, the invention can be accompanied by agift recommendation UI 370, which can make intelligent giftrecommendations based on a variety of functions as described inconnection with FIG. 3A above. After recommending a set of gifts to agifter in UI 370, the gifter can select one or more of the gifts to sendto a designated giftee, causing the text message(s) 380 to be sentautomatically to the giftee's mobile device. As described elsewhere, therecipient or giftee's mobile device can then be used to gain access tothird party product or service providers' products and services coveredby the gift code(s) contained in the text messages 380 received by thegiftee's mobile device.

FIG. 3C is a screenshot of an exemplary, non-limiting hostingenvironment for the invention. For instance, a web site 380(www.facebook.com) includes various hosted information 296 about aprospective giftee, which can be used in connection with recommendinggifts. Gift history 294 is also illustrated, which can also be used inconnection with recommending gifts in UI 386.

A text message application 382 can be incorporated into a page of website 380 so that a prospective gifter can select gifts and create textmessage gifts for delivery to the giftee. A text message can either be atypical text message generated by the gifter (e.g., text) accompanied bygift code(s) associated with the gift(s) selected by the gifter, as inthe case of TM+Gift 290, or a gift TM 292 can be sent which isautomatically generated without additional texting from the gifter. Atext message can be entered by the gifter in UI 384 for sending textmessages, which may also include gift codes.

UI 386 can be used to select and send a gift text message to a mobilenumber pre-associated with a third party, including a description of thedesignated gift(s) and gift code(s). Thus, for instance, in thescreenshot of FIG. 3C, the hosted environment 380 displays a friend, DanAckerman Greenberg. Information 296 about Dan and gift history 294 forDan are displayed. A gift recommendation engine underlying UI 386determines that Dan likes the Simpsons, and displays Simpsons gifts as aresult.

Then, a gifter can designate starbucks coffee 388, and cause a textmessage to be sent including the appropriate gift code that can beredeemed at Starbucks locations under gift criteria that can beassociated with a gift code, much like real world coupons, e.g.,expiration dates, restriction on number of purchases, etc. Since thepage is already based on the giftee, the giftee's mobile number isautomatically understood by the text messaging application 382 to be thetarget number. Advantageously, this number is maintained by the gifteeand is thus up to date, and the gifter need not memorize the number.

FIG. 3D illustrates that context 397 of a hosted environment 381 a canbe used to trigger the use of text message gifting UI 399 a inaccordance with the invention. For instance, a potential gifter can bebrowsing with a browser when the gifter encounters a trailer for theupcoming Simpsons movie. As a result of the selection of the giftingcontext, context based gift UI 398 a displays content based gift CBG1(Starbucks coffee) and content based gift CBG2 (a pink donut). As in theother embodiments described herein, a gifter can then use text messageapplication UI 399 a and/or context based gift UI 398 a to select agift, which causes a gift text message to be sent to the target mobiledevice.

FIG. 3E illustrates another contextual example wherein the context 397is determined by prospective gifter viewing web site 381 b. Forinstance, by changing the gift categories to be displayed relevant to acontext 397, such as the Simpsons movie, a variety of context basedgifts can be displayed in context based gift UI 398 b. For instance,different kinds of Simpsons Gift categories include Virtual Gifts, PinkDonut, Duff Beer, Buzz Cola, etc., Ringtones, Mobile Wallpapers,7-11/Kwik-E-Mart, 1 Free Donut, 1 Free Squishee, Paid Mobile Content,Simpsons Game. In conjunction with text message application/UI 399 b,text message(s) 380 are automatically generated as described elsewhereherein.

FIG. 4A illustrates some exemplary, non-limiting categories of gifts inaccordance with an embodiment of the invention employing text messages.In this regard, to use an incoming gift text message 400 t received by arecipient's mobile phone 410 t, the gift code information and gift code405 t included in the gift text message 400 t are verified by the giftprovider in order enable or realize the gift for the giftee at 420 t.Once verified, a whole host of products or services is contemplated. Forinstance, categories include retail 421, multimedia 422, software 423,services 424, tickets 425, gift certificates 430, and so on.

As mentioned, instead of a text message, an MMS message can besubstituted that includes the unique code as described in the textmessage. For instance, an MMS message may include a visual card orcoupon object including graphics, text, etc. that includes a gift code.In this regard, MMS messages support a wide range of content and any MMSmessage that includes a gift code redeemable at a store, retailer,provider, etc. is contemplated by the invention. For some non-limitingexamples, the gift code can be represented in an image format (e.g.,overlay graphic, watermark, etc), or text format (e.g., conventionalASCII codes). As shown in FIG. 4B, to use an incoming gift MMS message400 m received by a recipient's mobile phone 410 m in automatic responseto a gifter designating a gift in hosted environment 440 m, the giftcode information and gift code 405 m included in the gift MMS message400 m are verified by the gift provider in order enable or realize thegift for the giftee at 420 m.

Other wireless application protocol (WAP) specifications can also beused for communicating gift codes to a recipient mobile device as well.For instance, as shown in FIG. 4C, to use an incoming gift WAP message400 w received by a recipient's mobile phone 410 w in automatic responseto a gifter designating a gift in hosted WAP service 440 w, the giftcode information and gift code 405 w included in the gift WAP message400 w are verified by the gift provider in order enable or realize thegift for the giftee at 420 w.

A WAP browser provides all of the basic services of a computer based webbrowser but is simplified to operate within the restrictions of adevice, such as a mobile phone. WAP is now the protocol used for themajority of the world's mobile internet sites, known as WAP sites. Anyof the WAP protocols can be used to automatically generate gift messagesin accordance with the invention. For instance, WAP Push allows WAPcontent to be pushed to the mobile handset with minimum userintervention. A WAP Push is basically a specially encoded message whichincludes a link to a WAP address. A WAP Push can be used toautomatically send gifts in accordance with the invention.

The above-described WAP embodiments thus do not require a web site inthe traditional sense, and accordingly, it can be appreciated that theinvention is not limited to web site or web service embodiments. Rather,the invention may be practiced from a gifter's mobile device as well.Accordingly, FIG. 4D illustrates an embodiment of the invention whereinthe gifter indicates a gift for a giftee from a mobile device instead ofa hosted environment. As shown, a gifter makes a designation of a gifton the gifter's mobile device 450 in a context that indicates thegiftee's mobile device as a target for automatically generating a giftmessage. This indication can be as part of a view into a hostedenvironment 440 (e.g., a server based implementation) which in turngenerates the gift message 400, or a mobile automatic giftingapplication can automatically generate the gift message 400 directlyfrom the gifter's mobile device 410. As with other embodiments describedherein, to use an incoming gift message 400 received by a recipient'smobile phone 410 in automatic response to a gifter designating a giftfrom mobile device 450, the gift code information and gift code 405included in the gift message 400 are verified by the gift provider inorder enable or realize the gift for the giftee at 420.

Non-Limiting Hosting Environments for Gift Text Messaging

For the avoidance of doubt, any of the embodiments described herein canbe included in any host environment, e.g., web site or service. In someembodiments, the host environment has other existing relationships tomobile device users already, which can help inform the giftingrecommendation process as well.

For instance, the invention can be incorporated into a hostedenvironment such as a content request, storage and configuration system,which loads and stores different types of content, associates each pieceof content with one or more keywords and configures the content inparticular ways for the benefit of a user. Content owners load contentinto the system or reference (e.g., link to) content from elsewhere, andkeywords are assigned to the content by the system based on user inputand/or auto-generation acts taken by the system.

In various exemplary non-limiting embodiments, a tag representing thekeywords is associated with the content and stored in the system. ShortMessage Service (SMS), email, instant messaging, a designated entrypoint on a personal computer or mobile web browser, or other methods maybe used by a user to communicate the one or more pre-assigned keywordsin order to indicate user interest in a particular content item oritems. Receipt by the system of the keywords from the user initiatesidentification and retrieval of relevant piece(s) of content by thesystem, and association of the content with the user making the request.Then, if desired by the user or if otherwise appropriate, the systemoperates to configure a user's account to take specific actions withrespect to the content.

The user may also assign his or her own keywords to aid in the use ofthe system, and establish pre-defined additional actions that the systemmay take based on receipt of the keyword by the user. In onenon-limiting embodiment, a user can send a request to purchase aparticular content item or items with the use of keywords, the systemhaving been pre-configured to execute a purchase transaction uponreceipt of such keywords. In another non-limiting embodiment, a user canconfigure the system so that the send, or transmission, of the keywordtriggers the deposit of the associated content in the account of anotheruser or accounts of a group of users, or otherwise authorizes the otheruser(s) to interact with the content in a specified way.

The gifting techniques of the invention can thus be coupled withrequesting digital content or data via the use of keywords and a systemcapable of retrieving, storing and configuring digital content or databased on the keywords or identity of the user. As used herein, the term“digital content or data” includes any one or more text, audio, video,image and data files including, but not limited to, databaseinformation, information worker files, such as spreadsheet files, markuplanguage documents, such as XML, or any combination of such digitalcontent or data.

FIG. 5 is a diagram illustrating an exemplary host environment orsystem. Other organizations will be known to those skilled in the artand also within the scope. There is no limit on the type of digitalcontent or data that the invention can handle though the techniques maybe tailored to types of files with respect to user action against thecontent. One can appreciate that digital content is created in and canbe converted to many different formats and may be in varying sizes, andusers will have a variety of different uses for particular digitalcontent or data.

In FIG. 5, user devices 511, such as computers, mobile phones and/orother computer devices, comprise a first operational layer. For theavoidance of doubt, portable or mobile devices can include a variety ofcomputing devices including (a) portable media players, e.g., portablemusic players, such as MP3 players, walkmans, etc., (b) portablecomputing devices, such as laptops, personal digital assistants(“PDAs”), cell phones, portable email devices, thin clients, portablegaming devices, etc., (c) consumer electronic devices, such as TVs, DVDplayers, set top boxes, monitors, displays, etc., (d) public computingdevices, such as kiosks, in-store music sampling devices, automatedteller machines (ATMs), cash registers, etc., (e) navigation deviceswhether portable or installed in-vehicle and/or (f) non-conventionalcomputing devices, such as kitchen appliances, motor vehicle controls(e.g., steering wheels), etc. Finally, while some embodiments aredirected to systems and method for use in portable devices, as one ofordinary skill in the art can appreciate, the techniques are by no meanslimited to practice on portable devices, but may also apply tostandalone computing devices, such as personal computers (“PCs”), servercomputers, gaming platforms (e.g., Xbox), mainframes, etc.

User devices 511 are communicatively coupled via networks 512 to a setof networked services 513 (which may be a centralized server, ordistributed) which provide content storage, retrieval and configurationservices. The server or services 513 include a keyword/command phraseparser 516 for receiving content and keywords from content owners andusers for storage or retrieval of content in or from a keyword/contentdatabase 514, respectively, by the content management system. The serveror services 513 also include a display/notification interface 517 forrendering or notifying designated recipients of content retrieved inaccordance with content management techniques. User account data is alsostored in storage 515, which includes configuration data and other userinformation as part of the user's account with the content managementsystem. Storage techniques may also invariably be implemented across aplurality of storage components, such as databases or other storage,which may be co-located, or distributed, and of the same type ofstorage, or disparate types.

In operation, as described in more detail below, user devices operate tosend keywords and command phrases to keyword/command phrase parser 16for the retrieval of content for designated action based on the commandphrases. The keywords are checked against the keyword/content database514 in order to retrieve at least one set of content based on thecommands of the command phrase(s) received by parser 516. Then, prior totaking action on the content, user account data in storage 515 may befurther consulted to determine if there are any additional parameters(e.g., other filters on the content) that should be applied to theretrieved content based on configuration information stored for theuser. Next, interface 517 takes any designated actions as specified bythe commands of the command phrase(s) with respect to the resultingset(s) of content matching the user keywords and user configurationdata. For instance, interface 517 may prepare the resulting set(s) ofcontent for display on a particular user device known to have a certaintype of display, or known to handle certain formats of content, i.e.,the resulting content is readied for rendering on the device. Or, foranother example, interface 517 may send notifications to a group offriends about the content and about certain actions (e.g., purchase)that may optionally be taken with respect to the content. Finally, thecontent and/or notifications are delivered to the appropriate recipient(e.g., the user in the case of a request for display of content, or thegroup of friends in the case of the notification example).

A number of tables are included in the database are depicted in FIG. 6.These tables are used to identify owners of digital content or data, toassociate keywords with certain types of digital content or data and toassign certain available actions that might be available to take againstthe digital content or data. Tables are also used to manage theassignment of keywords to digital content or data to ensure that eachset of digital content or data is assigned a unique keyword or keywords.Keywords 621 can be assigned to multiple content 622 and multiplecontent links 623. A content owner 624 can own multiple content 622 andmultiple content links 623.

On the user side in FIG. 7, tables are used to identify a user 701 withthe keyword requests 703, to store preferences 702 with respect tocertain types of actions that may be taken against the digital contentor data, and to record historical actions 704 actually taken by the userwith respect to the digital content or data. From the user'sperspective, their keyword requests 703 can be either of a keyword theyown 705 or a keyword they do not own 706. The sum of 705 and 706 resultsin a Keyword table 621.

The owner of digital content or data can use the system to uploaddigital content or data, shown in FIG. 8. The user, starting at 801,then logs into the system at 802 and chooses a keyword that is currentlyavailable at 803. The user then assigns content to the keyword at 804and determines if there is additional content to be associated with thekeyword at 805. In one embodiment, the assignment of additional contentthat takes place at act 804 continues until the user is finished. Theuser then publishes the keyword at 806 to make it available for use. Thekeyword is then promoted to other users at 807, thereby ending thecreation cycle of a keyword at 808. In addition, the owner of digitalcontent or data may enable an integration point with the system thatallows the system to retrieve the digital content or data from the owneron demand at the time it is required, and/or to take additional actionson demand. For instance, the system might signal a Web server under thecontrol of the content owner to execute a script that the owner hasdesignated, which script can execute any of a number of actions, forexample real time queries, control over robotic systems, or registeringa tally to be compared to the tallies recorded in response to otherkeywords. The owner may request the assignment of a keyword or keywords,or they will be assigned automatically, to the digital content or data.The database 514 depicted in FIG. 5 stores reference to the digitalcontent, or interfaces to the digital or data, alongside tagsrepresenting the associated keyword or keywords. Digital content or datacan be grouped together and may include different types of content orvariations of the same content. Groups of digital content or data mayshare the same keyword or keywords.

By establishing a method and system for owners of digital content anddata to connect the digital content or data to keywords, a better meansof locating digital content and data is realized. There are manycircumstances in which it may be beneficial for a person to obtaindigital content without searching for the content, disclosing one'sidentity to a third or being compelled to provide a unique place ofdelivery and receipt such as a physical mailing address, email or faxnumber. The ability for a user to request digital content with keywordsmeets the needs and interests of users because they can enable access tothe content they want when they want it in a simple and convenient way,typically via a mobile device. It also helps meet the needs of contentowners, commerce providers and other organizations looking to distributedigital content or data, or have actions taken against such digitalcontent or data, because they know the persons requesting access aregenuinely interested.

A typical user experience, shown in FIG. 9, starts with the mobileterminal at 901, although any computer may encompass the initiatingsource for delivery of the keywords by the user. A user will know to orbe instructed to send specific keywords as a message to the server at902. Once the user enters a command phrase, including a keyword, ontheir device at 903, the corresponding content and links are depositedinto the user's account at 904. If there are predefined actions to pushthe content to the user at 905 then that content is pushed to the user'sdevice at 906. The user decides what action to take with the content andlinks deposited in their account at 907 by either repeating the keywordand command phrase step returning to 903, taking no action thus endingthe steps at 909, or following a content link given to them which willtake them outside the system at 908.

In a non-limiting, embodiment, the system is supported by an SMS mobilemessaging platform that integrates with the multiple platforms of thecellular companies (or, for those cellular companies with an alternatepreferred means of text messaging, to their equivalent of SMS), as wellas a content management system. In this case, the request serverreceives an SMS (or equivalent) containing the keyword from a user andlooks up the digital content or data that the user is requesting in thedatabase. The request server is reached through the use of an instantmessaging (IM) system wherein the request server as a machine is reachedas part of the IM's buddy list. In such an embodiment, the requestserver would appear as a buddy on the user's IM interface, which meansthat the user could initiate a text message conversation with therequest server using the IM's existing capabilities. The user would sendthe keywords as a text message. In yet another embodiment, the usercould use an entry field on a web based application that is directlyconnected to the system. In all cases, the system would realize theidentity of the user, which information would be available to the systembased on the method of communication selected.

FIG. 10 shows the system flow of the keyword/content processing. Thesystem begins at 1001 and then receives a command phrase at 1002. Thiscommand phrase is parsed into keywords, actions, and content at 1003 bythe system. The system then executes the appropriate request at 1004 andcontent and/or link(s) are deposited into the appropriate user accountsat 1005. If there are defined actions to push content to users at 1006,then the content is pushed to the user(s)' device at 1007; if not, thesystem process ends at 1008.

Once the digital content or data is identified by its keywords, it canbe presented to the user on a web-based application enabled by thesystem, which may be accessible via generally available web browsers oneither personal computers or mobile devices. The manner in which digitalcontent or data is displayed to the user is controlled by preferences ofthe owner of the digital content or data, the type of digital content ordata, and the capabilities of the system. For example, a hyperlink to aurl may appears as a hyperlink with brief summary information associatedwith the hyperlink appearing underneath. An audio file may appear onlyas a title of the audio file. A video may appear as a single digitalimage of one of the frames of the video with no title or description.

Depending on the type of digital content or data stored or integratedwith system, certain actions may be available to take with respect tothe content. For example, a user who is presented with the content bythe system may be able to forward the content received directly to anemail account or some other system. Sometimes a user may want to havethe requested digital content or data delivered directly back to amobile terminal. Other times, the user may want to have the digitalcontent or data viewable in a web browser, or the original softwareapplication in which the digital content or data was meant to be viewed.

A user may also predefine a preference as to what to do with the digitalcontent or data so that the system will take action with the digitalcontent or data immediately. For example, if a user were requestingaudio files from the same digital content owner repeatedly, and eachtime the user used the capabilities of the system to export the file toanother system, the user may instead configure the system toautomatically forward the audio file to another system or softwareapplication.

Digital content or data may also be configured by the system for otheractions by the user. For example, the seller of shoes may enable a userto use the keyword “shoes” to deposit a hyperlink to the seller'swebsite in the user's account for the user to obtain additionalinformation on the particular shoes. In addition to the additionalinformation, however, the system may also enable the user to buy theshoes without leaving the web based application, the system havingconfigured the digital content or data to enable the ability to conductan e-commerce transaction.

The system also supports actions that can be specified at the time ofsubmitting the keyword, to have the system process those actionsdirectly. One category of action is the purchase of an item representedby a keyword. FIG. 11 shows the action flow of such a scenario. Prior tomaking a purchase, the user has entered their personal paymentinformation and preferences into the system, decided to make a purchase,and knows the keyword and command phrase for the item of interest at1101. When the user wants to purchase an item directly using the system,the user will enter the keyword and the buy command as one commandphrase into the system at 1102, the system parses the purchase requestat 1103 and determines if an acknowledgement is required in order tomake the purchase at 1104. If so, then the system responds with aconfirmation request at 1105, and when the user acknowledges theconfirmation at 1106, the system acts as a purchasing agent by executingthe purchase transaction at 1107, charging the user's payment method at1108, passing the purchase and payment information securely along to thevendor at 1109, returning whatever acknowledgement or receipt isnecessary to the user at 1110, thus completing the process at 1111. Ifno acknowledgement is required at 1104, then the system jumps to executethe transaction at 1107.

Another use of the system is in the quick and easy dissemination ofcontent represented by keywords to another recipient or multiple otherrecipients. FIG. 12 shows this scenario. In one embodiment, the user canappend the keyword with a short command followed by another person'sphone number, as a single command, and the system will create an accountfor the other person, notify the person of the account's existence andassociate the content related to the keyword with the other person'saccount. Prior to sending a multiple-recipient message, the user hasdefined a group name, associated a list of members and their contactinformation with the group name, and learned the keyword for whatevercontent they wish to share at 1201. When a user wants to passinformation to multiple recipients, the user will enter the keyword andthe group name in one command phrase into the system at 1202. The systemthen parses the command phrase at 1203 and retrieves the contentassociated with the keyword at 1204 and automatically deposits thecontent response into the accounts or devices of all the members of thegroup at 1205. If there are defined actions to push content to the usersat 1206, then the content is pushed to the device of each member of thegroup at 1207; if not, then the process ends at 1208.

By enabling a system that allows different groups to tag and managedigital content or data in a way that make it easier for other people toaccess, particularly in a mobile oriented world, time is saved,providing an improved means for privacy and reduction of costs for theparties involved. The establishment of a central system (‘central’ fromthe standpoint of the users and content owners, though the services maybe distributed and need not be a central set of servers) to manage andconfigure the requested digital content or data allows the user to relyon a single destination to manage multiple requests of multiple types ofcontent from multiple content owners.

Exemplary Network and Operating Environments

The following description sets forth some exemplary networks andnon-limiting operating environments for the systems and methods for gifttext messaging of the present invention. The below-described operatingenvironments should be considered non-exhaustive, however, and thus thebelow-described network architectures merely show how the services ofthe present invention may be incorporated into some exemplary existingnetwork structures and architectures. One can appreciate, however, thatthe invention may be incorporated into now existing or futurealternative architectures for communication networks as well, and tosystems that encompass or integrate a plurality of disparatecommunication networks.

The global system for mobile communication (“GSM”) is one of the mostwidely utilized wireless access systems in today's fast growingcommunication systems. GSM provides circuit-switched data services tosubscribers, such as mobile telephone or computer users. General PacketRadio Service (“GPRS”), which is an extension to GSM technology,introduces packet switching to GSM networks. GPRS uses a packet-basedwireless communication technology to transfer high and low speed dataand signaling in an efficient manner. GPRS optimizes the use of networkand radio resources, thus enabling the cost effective and efficient useof GSM network resources for packet mode applications.

As one of ordinary skill in the art can appreciate, the exemplaryGSM/GPRS environment and services described herein can also be extendedto 3G services, such as Universal Mobile Telephone System (“UMTS”),Frequency Division Duplexing (“FDD”) and Time Division Duplexing(“TDD”), High Speed Packet Data Access (“HSPDA”), cdma2000 1x EvolutionData Optimized (“EVDO”), Code Division Multiple Access-2000 (“cdma20003x”), Time Division Synchronous Code Division Multiple Access(“TD-SCDMA”), Wideband Code Division Multiple Access (“WCDMA”), EnhancedData GSM Environment (“EDGE”), International MobileTelecommunications-2000 (“IMT-2000”), Digital Enhanced CordlessTelecommunications (“DECT”), etc., as well as to other network servicesthat shall become available in time. In this regard, the techniques ofthe invention may be applied independently of the method of datatransport, and do not depend on any particular network architecture, orunderlying protocols.

FIG. 13A depicts an overall block diagram of an exemplary packet-basedmobile cellular network environment, such as a GPRS network, in whichthe invention may be practiced. In such an environment, there are aplurality of Base Station Subsystems (“BSS”) 1300 (only one is shown),each of which comprises a Base Station Controller (“BSC”) 1302 serving aplurality of Base Transceiver Stations (“BTS”) such as BTSs 1304, 1306,and 1308. BTSs 1304, 1306, 1308, etc. are the access points where usersof packet-based mobile devices become connected to the wireless network.In exemplary fashion, the packet traffic originating from user devicesis transported over the air interface to a BTS 1308, and from the BTS1308 to the BSC 1302. Base station subsystems, such as BSS 1300, are apart of internal frame relay network 1310 that may include Service GPRSSupport Nodes (“SGSN”) such as SGSN 1312 and 1314. Each SGSN is in turnconnected to an internal packet network 1320 through which a SGSN 1312,1314, etc. can route data packets to and from a plurality of gatewayGPRS support nodes (GGSN) 1322, 1324, 1326, etc. As illustrated, SGSN1314 and GGSNs 1322, 1324, and 1326 are part of internal packet network1320. Gateway GPRS serving nodes 1322, 1324 and 1326 mainly provide aninterface to external Internet Protocol (“IP”) networks such as PublicLand Mobile Network (“PLMN”) 1350, corporate intranets 1340, orFixed-End System (“FES”) or the public Internet 1330. As illustrated,subscriber corporate network 1340 may be connected to GGSN 1324 viafirewall 1332; and PLMN 1350 is connected to GGSN 1324 via boardergateway router 1334. The Remote Authentication Dial-In User Service(“RADIUS”) server 1342 may be used for caller authentication when a userof a mobile cellular device calls corporate network 1340.

Generally, there can be four different cell sizes in a GSMnetwork—macro, micro, pico and umbrella cells. The coverage area of eachcell is different in different environments. Macro cells can be regardedas cells where the base station antenna is installed in a mast or abuilding above average roof top level. Micro cells are cells whoseantenna height is under average roof top level; they are typically usedin urban areas. Pico cells are small cells having a diameter is a fewdozen meters; they are mainly used indoors. On the other hand, umbrellacells are used to cover shadowed regions of smaller cells and fill ingaps in coverage between those cells.

FIG. 13B illustrates the architecture of a typical GPRS network assegmented into four groups: users 1350, radio access network 1360, corenetwork 1370, and interconnect network 1380. Users 1350 comprise aplurality of end users (though only mobile subscriber 1355 is shown inFIG. 13B). Radio access network 1360 comprises a plurality of basestation subsystems such as BSSs 1362, which include BTSs 1364 and BSCs1366. Core network 1370 comprises a host of various network elements. Asillustrated here, core network 1370 may comprise Mobile Switching Center(“MSC”) 1371, Service Control Point (“SCP”) 1372, gateway MSC 1373, SGSN1376, Home Location Register (“HLR”) 1374, Authentication Center (“AuC”)1375, Domain Name Server (“DNS”) 1377, and GGSN 1378. Interconnectnetwork 1380 also comprises a host of various networks and other networkelements. As illustrated in FIG. 13B, interconnect network 1380comprises Public Switched Telephone Network (“PSTN”) 1382, Fixed-EndSystem (“FES”) or Internet 1384, firewall 1388, and Corporate Network1389.

A mobile switching center can be connected to a large number of basestation controllers. At MSC 1371, for instance, depending on the type oftraffic, the traffic may be separated in that voice may be sent toPublic Switched Telephone Network (“PSTN”) 1382 through Gateway MSC(“GMSC”) 1373, and/or data may be sent to SGSN 1376, which then sendsthe data traffic to GGSN 1378 for further forwarding.

When MSC 1371 receives call traffic, for example, from BSC 1366, itsends a query to a database hosted by SCP 1372. The SCP 1372 processesthe request and issues a response to MSC 1371 so that it may continuecall processing as appropriate.

The HLR 1374 is a centralized database for users to register to the GPRSnetwork. HLR 1374 stores static information about the subscribers suchas the International Mobile Subscriber Identity (“IMSI”), subscribedservices, and a key for authenticating the subscriber. HLR 1374 alsostores dynamic subscriber information such as the current location ofthe mobile subscriber. Associated with HLR 1374 is AuC 1375. AuC 1375 isa database that contains the algorithms for authenticating subscribersand includes the associated keys for encryption to safeguard the userinput for authentication.

In the following, depending on context, the term “mobile subscriber”sometimes refers either to the end user and sometimes to the actualportable device used by an end user of the mobile cellular service. Whena mobile subscriber turns on his or her mobile device, the mobile devicegoes through an attach process by which the mobile device attaches to anSGSN of the GPRS network. In FIG. 13B, when mobile subscriber 1355initiates the attach process by turning on the network capabilities ofthe mobile device, an attach request is sent by mobile subscriber 1355to SGSN 1376. The SGSN 1376 queries another SGSN, to which mobilesubscriber 1355 was attached before, for the identity of mobilesubscriber 1355. Upon receiving the identity of mobile subscriber 1355from the other SGSN, SGSN 1376 requests more information from mobilesubscriber 1355. This information is used to authenticate mobilesubscriber 1355 to SGSN 1376 by HLR 1374. Once verified, SGSN 1376 sendsa location update to HLR 1374 indicating the change of location to a newSGSN, in this case SGSN 1376. HLR 1374 notifies the old SGSN, to whichmobile subscriber 1355 was attached before, to cancel the locationprocess for mobile subscriber 1355. HLR 1374 then notifies SGSN 1376that the location update has been performed. At this time, SGSN 1376sends an Attach Accept message to mobile subscriber 1355, which in turnsends an Attach Complete message to SGSN 1376.

After attaching itself with the network, mobile subscriber 1355 thengoes through an authentication process. In the authentication process,SGSN 1376 sends the authentication information to HLR 1374, which sendsinformation back to SGSN 1376 based on the user profile that was part ofthe user's initial setup. The SGSN 1376 then sends a request forauthentication and ciphering to mobile subscriber 1355. The mobilesubscriber 1355 uses an algorithm to send the user identification (ID)and password to SGSN 1376. The SGSN 1376 uses the same algorithm andcompares the result. If a match occurs, SGSN 1376 authenticates mobilesubscriber 1355.

Next, the mobile subscriber 1355 establishes a user session with thedestination network, corporate network 1389, by going through a PacketData Protocol (“PDP”) activation process. Briefly, in the process,mobile subscriber 1355 requests access to the Access Point Name (“APN”),for example, UPS.com (e.g., which can be corporate network 1379 in FIG.13B) and SGSN 1376 receives the activation request from mobilesubscriber 1355. SGSN 1376 then initiates a Domain Name Service (“DNS”)query to learn which GGSN node has access to the UPS.com APN. The DNSquery is sent to the DNS server within the core network 1370, such asDNS 1377, which is provisioned to map to one or more GGSN nodes in thecore network 1370. Based on the APN, the mapped GGSN 1378 can access therequested corporate network 1379. The SGSN 1376 then sends to GGSN 1378a Create Packet Data Protocol (“PDP”) Context Request message thatcontains necessary information. The GGSN 1378 sends a Create PDP ContextResponse message to SGSN 1376, which then sends an Activate PDP ContextAccept message to mobile subscriber 1355.

Once activated, data packets of the call made by mobile subscriber 1355can then go through radio access network 1360, core network 1370, andinterconnect network 1380, in particular fixed-end system or Internet1384 and firewall 1388, to reach corporate network 1389.

Thus, network elements that may implicate the functionality of thesystems and methods for gift text messaging in accordance with theinvention may include but are not limited to Gateway GPRS Support Nodetables, Fixed End System router tables, firewall systems, VPN tunnels,and any number of other network elements as required by the particulardigital network.

FIG. 14 shows yet another exemplary block diagram view of a GSM/GPRS/IPmultimedia network architecture 1400 in which the systems and methodsfor gift text messaging of the present invention may be incorporated. Asillustrated, architecture 1400 of FIG. 14 includes a GSM core network1401, a GPRS network 1430 and an IP multimedia network 1438. The GSMcore network 1401 includes a Mobile Station (MS) 1402, at least one BaseTransceiver Station (BTS) 1404 and a Base Station Controller (BSC) 1406.The MS 1402 is physical equipment or Mobile Equipment (ME), such as amobile phone or a laptop computer that is used by mobile subscribers,with a Subscriber identity Module (SIM). The SIM includes anInternational Mobile Subscriber Identity (IMSI), which is a uniqueidentifier of a subscriber. The BTS 1404 is physical equipment, such asa radio tower, that enables a radio interface to communicate with theMS. Each BTS may serve more than one MS. The BSC 1406 manages radioresources, including the BTS. The BSC may be connected to several BTSs.The BSC and BTS components, in combination, are generally referred to asa base station (BSS) or radio access network (RAN) 1403. The GSM corenetwork 1401 also includes a Mobile Switching Center (MSC) 1408, aGateway Mobile Switching Center (GMSC) 1410, a Home Location Register(HLR) 1412, Visitor Location Register (VLR) 1414, an AuthenticationCenter (AuC) 1418, and an Equipment Identity Register (EIR) 1416. TheMSC 1408 performs a switching function for the network. The MSC alsoperforms other functions, such as registration, authentication, locationupdating, handovers, and call routing. The GMSC 1410 provides a gatewaybetween the GSM network and other networks, such as an IntegratedServices Digital Network (ISDN) or Public Switched Telephone Networks(PSTNs) 1420. In other words, the GMSC 1410 provides interworkingfunctionality with external networks.

The HLR 1412 is a database that contains administrative informationregarding each subscriber registered in a corresponding GSM network. TheHLR 1412 also contains the current location of each MS. The VLR 1414 isa database that contains selected administrative information from theHLR 1412. The VLR contains information necessary for call control andprovision of subscribed services for each MS currently located in ageographical area controlled by the VLR. The HLR 1412 and the VLR 1414,together with the MSC 1408, provide the call routing and roamingcapabilities of GSM. The AuC 1416 provides the parameters needed forauthentication and encryption functions. Such parameters allowverification of a subscriber's identity. The EIR 1418 storessecurity-sensitive information about the mobile equipment.

A Short Message Service Center (SMSC) 1409 allows one-to-one ShortMessage Service (SMS) messages to be sent to/from the MS 1402. A PushProxy Gateway (PPG) 1411 is used to “push” (i.e., send without asynchronous request) content to the MS 1402. The PPG 1411 acts as aproxy between wired and wireless networks to facilitate pushing of datato the MS 1402. A Short Message Peer to Peer (SMPP) protocol router 1413is provided to convert SMS-based SMPP messages to cell broadcastmessages. SMPP is a protocol for exchanging SMS messages between SMSpeer entities such as short message service centers. It is often used toallow third parties, e.g., content suppliers such as news organizations,to submit bulk messages.

To gain access to GSM services, such as speech, data, and short messageservice (SMS), the MS first registers with the network to indicate itscurrent location by performing a location update and IMSI attachprocedure. The MS 1402 sends a location update including its currentlocation information to the MSC/VLR, via the BTS 1404 and the BSC 1406.The location information is then sent to the MS's HLR. The HLR isupdated with the location information received from the MSC/VLR. Thelocation update also is performed when the MS moves to a new locationarea. Typically, the location update is periodically performed to updatethe database as location updating events occur.

The GPRS network 1430 is logically implemented on the GSM core networkarchitecture by introducing two packet-switching network nodes, aserving GPRS support node (SGSN) 1432, a cell broadcast and a GatewayGPRS support node (GGSN) 1434. The SGSN 1432 is at the same hierarchicallevel as the MSC 1408 in the GSM network. The SGSN controls theconnection between the GPRS network and the MS 1402. The SGSN also keepstrack of individual MS's locations and security functions and accesscontrols.

A Cell Broadcast Center (CBC) 1433 communicates cell broadcast messagesthat are typically delivered to multiple users in a specified area. CellBroadcast is one-to-many geographically focused service. It enablesmessages to be communicated to multiple mobile phone customers who arelocated within a given part of its network coverage area at the time themessage is broadcast.

The GGSN 1434 provides a gateway between the GPRS network and a publicpacket network (PDN) or other IP networks 1436. That is, the GGSNprovides interworking functionality with external networks, and sets upa logical link to the MS through the SGSN. When packet-switched dataleaves the GPRS network, it is transferred to an external TCP-IP network1436, such as an X.25 network or the Internet. In order to access GPRSservices, the MS first attaches itself to the GPRS network by performingan attach procedure. The MS then activates a packet data protocol (PDP)context, thus activating a packet communication session between the MS,the SGSN, and the GGSN.

In a GSM/GPRS network, GPRS services and GSM services can be used inparallel. The MS can operate in one three classes: class A, class B, andclass C. A class A MS can attach to the network for both GPRS servicesand GSM services simultaneously. A class A MS also supports simultaneousoperation of GPRS services and GSM services. For example, class Amobiles can receive GSM voice/data/SMS calls and GPRS data calls at thesame time.

A class B MS can attach to the network for both GPRS services and GSMservices simultaneously. However, a class B MS does not supportsimultaneous operation of the GPRS services and GSM services. That is, aclass B MS can only use one of the two services at a given time.

A class C MS can attach for only one of the GPRS services and GSMservices at a time. Simultaneous attachment and operation of GPRSservices and GSM services is not possible with a class C MS.

A GPRS network 1430 can be designed to operate in three networkoperation modes (NOM1, NOM2 and NOM3). A network operation mode of aGPRS network is indicated by a parameter in system information messagestransmitted within a cell. The system information messages dictates a MSwhere to listen for paging messages and how signal towards the network.The network operation mode represents the capabilities of the GPRSnetwork. In a NOM1 network, a MS can receive pages from a circuitswitched domain (voice call) when engaged in a data call. The MS cansuspend the data call or take both simultaneously, depending on theability of the MS. In a NOM2 network, a MS may not received pages from acircuit switched domain when engaged in a data call, since the MS isreceiving data and is not listening to a paging channel In a NOM3network, a MS can monitor pages for a circuit switched network whilereceived data and vice versa.

The IP multimedia network 1438 was introduced with 3GPP Release 5, andincludes an IP multimedia subsystem (IMS) 1440 to provide richmultimedia services to end users. A representative set of the networkentities within the IMS 1440 are a call/session control function (CSCF),a media gateway control function (MGCF) 1446, a media gateway (MGW)1448, and a master subscriber database, called a home subscriber server(HSS) 1450. The HSS 1450 may be common to the GSM network 1401, the GPRSnetwork 1430 as well as the IP multimedia network 1438.

The IP multimedia system 1440 is built around the call/session controlfunction, of which there are three types: an interrogating CSCF (I-CSCF)1443, a proxy CSCF (P-CSCF) 1442, and a serving CSCF (S-CSCF) 1444. TheP-CSCF 1442 is the MS's first point of contact with the IMS 1440. TheP-CSCF 1442 forwards session initiation protocol (SIP) messages receivedfrom the MS to an SIP server in a home network (and vice versa) of theMS. The P-CSCF 1442 may also modify an outgoing request according to aset of rules defined by the network operator (for example, addressanalysis and potential modification).

The I-CSCF 1443, forms an entrance to a home network and hides the innertopology of the home network from other networks and providesflexibility for selecting an S-CSCF. The I-CSCF 1443 may contact asubscriber location function (SLF) 1445 to determine which HSS 1450 touse for the particular subscriber, if multiple HSS's 1450 are present.The S-CSCF 1444 performs the session control services for the MS 1402.This includes routing originating sessions to external networks androuting terminating sessions to visited networks. The S-CSCF 1444 alsodecides whether an application server (AS) 1452 is required to receiveinformation on an incoming SIP session request to ensure appropriateservice handling. This decision is based on information received fromthe HSS 1450 (or other sources, such as an application server 1452). TheAS 1452 also communicates to a location server 1456 (e.g., a GatewayMobile Location Center (GMLC)) that provides a position (e.g.,latitude/longitude coordinates) of the MS 1402.

The HSS 1450 contains a subscriber profile and keeps track of which corenetwork node is currently handling the subscriber. It also supportssubscriber authentication and authorization functions (AAA). In networkswith more than one HSS 1450, a subscriber location function providesinformation on the HSS 1450 that contains the profile of a givensubscriber.

The MGCF 1446 provides interworking functionality between SIP sessioncontrol signaling from the IMS 1440 and ISUP/BICC call control signalingfrom the external GSTN networks (not shown). It also controls the mediagateway (MGW) 1448 that provides user-plane interworking functionality(e.g., converting between AMR- and PCM-coded voice). The MGW 1448 alsocommunicates with other IP multimedia networks 1454.

Push to Talk over Cellular (PoC) capable mobile phones register with thewireless network when the phones are in a predefined area (e.g., jobsite, etc.). When the mobile phones leave the area, they register withthe network in their new location as being outside the predefined area.This registration, however, does not indicate the actual physicallocation of the mobile phones.

There are multiple ways of implementing the present invention, e.g., anappropriate API, tool kit, driver code, operating system, control,standalone or downloadable software object, etc., which enableapplications and services to use the gift text messaging user interfacesand/or processes of the invention. The invention contemplates the use ofthe invention from the standpoint of an API (or other software object),as well as from a software or hardware object that carries out mainfunctionality of the automatic gift text messaging programs and/orprocesses in accordance with the invention. Thus, variousimplementations of the invention described herein may have aspects thatare wholly in hardware, partly in hardware and partly in software, aswell as in software.

The word “exemplary” is used herein to mean serving as an example,instance, or illustration. For the avoidance of doubt, the subjectmatter disclosed herein is not limited by such examples. In addition,any aspect or design described herein as “exemplary” is not necessarilyto be construed as preferred or advantageous over other aspects ordesigns, nor is it meant to preclude equivalent exemplary structures andtechniques known to those of ordinary skill in the art. Furthermore, tothe extent that the terms “includes,” “has,” “contains,” and othersimilar words are used in either the detailed description or the claims,for the avoidance of doubt, such terms are intended to be inclusive in amanner similar to the term “comprising” as an open transition wordwithout precluding any additional or other elements.

As mentioned above, while exemplary embodiments of the present inventionhave been described in connection with various computing devices andnetwork architectures, the underlying concepts may be applied to anycomputing device or network architecture for a financial institution.For instance, the gift text messaging applications and/or processes ofthe invention may be applied to the operating system of a computingdevice, provided as a separate object on the device, as part of anotherobject, as a reusable control, as a downloadable object from a server,as a “middle man” between a device or object and the network, as adistributed object, as hardware, in memory, a combination of any of theforegoing, etc. While exemplary programming languages, names andexamples are chosen herein as representative of various choices, theselanguages, names and examples are not intended to be limiting. One ofordinary skill in the art will appreciate that there are numerous waysof providing object code and nomenclature that achieves the same,similar or equivalent functionality achieved by the various embodimentsof the invention.

As mentioned, the various techniques described herein may be implementedin connection with hardware or software or, where appropriate, with acombination of both. As used herein, the terms “component,” “system” andthe like are likewise intended to refer to a computer-related entity,either hardware, a combination of hardware and software, software, orsoftware in execution. For example, a component may be, but is notlimited to being, a process running on a processor, a processor, anobject, an executable, a thread of execution, a program, and/or acomputer. By way of illustration, both an application running oncomputer and the computer can be a component. One or more components mayreside within a process and/or thread of execution and a component maybe localized on one computer and/or distributed between two or morecomputers.

Thus, the methods and apparatus of the present invention, or certainaspects or portions thereof, may take the form of program code (i.e.,instructions) embodied in tangible media, such as floppy diskettes,CD-ROMs, hard drives, or any other machine-readable storage medium,wherein, when the program code is loaded into and executed by a machine,such as a computer, the machine becomes an apparatus for practicing theinvention. In the case of program code execution on programmablecomputers, the computing device generally includes a processor, astorage medium readable by the processor (including volatile andnon-volatile memory and/or storage elements), at least one input device,and at least one output device. One or more programs that may implementor utilize the gift text messaging programs and/or processes of thepresent invention, e.g., through the use of a data processing API,reusable controls, or the like, are preferably implemented in a highlevel procedural or object oriented programming language to communicatewith a computer system. However, the program(s) can be implemented inassembly or machine language, if desired. In any case, the language maybe a compiled or interpreted language, and combined with hardwareimplementations.

The methods and apparatus of the present invention may also be practicedvia communications embodied in the form of program code that istransmitted over some transmission medium, such as over electricalwiring or cabling, through fiber optics, or via any other form oftransmission, wherein, when the program code is received and loaded intoand executed by a machine, such as an EPROM, a gate array, aprogrammable logic device (PLD), a client computer, etc., the machinebecomes an apparatus for practicing the invention. When implemented on ageneral-purpose processor, the program code combines with the processorto provide a unique apparatus that operates to invoke the functionalityof the present invention. Additionally, any storage techniques used inconnection with the present invention may invariably be a combination ofhardware and software.

Furthermore, the disclosed subject matter may be implemented as asystem, method, apparatus, or article of manufacture using standardprogramming and/or engineering techniques to produce software, firmware,hardware, or any combination thereof to control a computer or processorbased device to implement aspects detailed herein. The term “article ofmanufacture” (or alternatively, “computer program product”) where usedherein is intended to encompass a computer program accessible from anycomputer-readable device, carrier, or media. For example, computerreadable media can include but are not limited to magnetic storagedevices (e.g., hard disk, floppy disk, magnetic strips . . . ), opticaldisks (e.g., compact disk (CD), digital versatile disk (DVD) . . . ),smart cards, and flash memory devices (e.g., card, stick). Additionally,it is known that a carrier wave can be employed to carrycomputer-readable electronic data such as those used in transmitting andreceiving electronic mail or in accessing a network such as the Internetor a local area network (LAN).

The aforementioned systems have been described with respect tointeraction between several components. It can be appreciated that suchsystems and components can include those components or specifiedsub-components, some of the specified components or sub-components,and/or additional components, and according to various permutations andcombinations of the foregoing. Sub-components can also be implemented ascomponents communicatively coupled to other components rather thanincluded within parent components (hierarchical). Additionally, itshould be noted that one or more components may be combined into asingle component providing aggregate functionality or divided intoseveral separate sub-components, and any one or more middle layers, suchas a management layer, may be provided to communicatively couple to suchsub-components in order to provide integrated functionality. Anycomponents described herein may also interact with one or more othercomponents not specifically described herein but generally known bythose of skill in the art.

In view of the exemplary systems described sura, methodologies that maybe implemented in accordance with the disclosed subject matter will bebetter appreciated with reference to the flowcharts of figures. Whilefor purposes of simplicity of explanation, the methodologies are shownand described as a series of blocks, it is to be understood andappreciated that the claimed subject matter is not limited by the orderof the blocks, as some blocks may occur in different orders and/orconcurrently with other blocks from what is depicted and describedherein. Where non-sequential, or branched, flow is illustrated viaflowchart, it can be appreciated that various other branches, flowpaths, and orders of the blocks, may be implemented which achieve thesame or a similar result. Moreover, not all illustrated blocks may berequired to implement the methodologies described hereinafter.

Furthermore, as will be appreciated various portions of the disclosedsystems above and methods below may include or consist of artificialintelligence or knowledge or rule based components, sub-components,processes, means, methodologies, or mechanisms (e.g., support vectormachines, neural networks, expert systems, Bayesian belief networks,fuzzy logic, data fusion engines, classifiers . . . ). Such components,inter alia, can automate certain mechanisms or processes performedthereby to make portions of the systems and methods more adaptive aswell as efficient and intelligent.

While the present invention has been described in connection with thepreferred embodiments of the various figures, it is to be understoodthat other similar embodiments may be used or modifications andadditions may be made to the described embodiment for performing thesame function of the present invention without deviating therefrom. Forexample, while exemplary network environments of the invention aredescribed in the context of a networked environment, such as a peer topeer networked environment, one skilled in the art will recognize thatthe present invention is not limited thereto, and that the methods, asdescribed in the present application may apply to any computing deviceor environment, such as a gaming console, handheld computer, portablecomputer, etc., whether wired or wireless, and may be applied to anynumber of such computing devices connected via a communications network,and interacting across the network.

Furthermore, it should be emphasized that a variety of computerplatforms, including handheld device operating systems and otherapplication specific operating systems are contemplated, especially asthe number of wireless networked devices continues to proliferate. Stillfurther, the present invention may be implemented in or across aplurality of processing chips or devices, and storage may similarly beeffected across a plurality of devices. Therefore, the present inventionshould not be limited to any single embodiment, but rather should beconstrued in breadth and scope in accordance with the appended claims.

1. A method for electronic gifting, comprising: receiving, by a service,a designation of a gift recipient and receiving at least one designationof a gift offered in a set of gifts displayed by a user interfacecomponent of the service; and automatically generating a message basedon the at least one designation including automatically generating amessage having a unique identifier that corresponds to a product orservice of an enabling entity that enables the product or service; andautomatically transmitting the message to the gift recipient.
 2. Themethod of claim 1, further comprising: associating the gift recipientwith at least one user keyword maintained by the service.
 3. The methodof claim 1, further comprising: receiving and storing, by the service, asecret from the gift recipient.
 4. The method of claim 3, wherein thegenerating includes automatically encrypting the unique identifier withthe secret provided by the gift recipient.
 5. The method of claim 3,wherein the generating includes automatically hashing the uniqueidentifier using the secret provided by the gift recipient.
 6. Themethod of claim 1, further comprising: analyzing data in a data store todetermine the set of gifts to display in the user interface component ofthe service.
 7. The method of claim 6, wherein the analyzing includesanalyzing information relating to the user of the service.
 8. The methodof claim 6, wherein the analyzing includes analyzing informationrelating to the gift recipient.
 9. The method of claim 6, wherein theanalyzing includes analyzing an external source of information.
 10. Themethod of claim 9, wherein the analyzing includes analyzing a GPSlocation of a mobile device of the gift recipient.
 11. The method ofclaim 6, wherein the analyzing includes analyzing a context of theservice.
 12. The method of claim 1, wherein the generating includesautomatically generating a short message service (SMS) message.
 13. Themethod of claim 1, wherein the generating includes automaticallygenerating a multimedia messaging service (MMS) message.
 14. The methodof claim 1, wherein the generating includes automatically generating awireless application protocol (WAP) message.
 15. The method of claim 1,further comprising, pre-associating a mobile number of the giftrecipient with the gift recipient, wherein the transmitting includesautomatically transmitting the message to the gift recipient's mobilenumber without input by the gifter.
 16. The method of claim 1, whereinthe receiving at least one designation of a gift includes receiving theat least one designation by a web site.
 17. The method of claim 1,wherein the receiving at least one designation of a gift includesreceiving the at least one designation by a mobile device application.18. A method for making a gift to a networked portable device with ashort messaging service (SMS), multimedia messaging service (MMS) orwireless application protocol (WAP) message communicated via a network,comprising: entering setup information, wherein the setup informationincludes any one or more of (a) payment information or (b) at least onegift keyword for at least one item related to a gifting decision;transmitting the setup information to the service; entering of giftselection information via a user interface of the networked portabledevice, wherein the gift selection information includes at least onegift keyword of said at least one gift keyword and a command thatinitiates gifting of at least one item of said at least one item to athird party; and transmitting the gift selection information to theservice, whereby the service automatically generates at least one SMSmessage, at least one MMS message, or at least one WAP message includingat least one unique code representing the at least one item of said atleast one item.
 19. The method of claim 18, further comprising:performing any purchasing required for the at least one unique code atleast based on the setup information.
 20. The method of claim 18,whereby the service automatically initiates a charge according to thepayment information.
 21. The method of claim 18, further comprising:storing transaction information, wherein the transaction informationincludes a record of the gifting of the at least one item of said atleast one item.
 22. A method for electronic gifting, comprising:receiving, by a host computing environment, one or more of (a) gifterinformation about a potential set of gifts, (b) giftee information abouta potential set of gifts, (c) context of the host computing environmentor (d) external information relating to a potential set of gifts;recommending, by the host computing environment, a set of gifts to agifter based on analysis of any one or more of the gifter information,giftee information, context, or external information; receiving aselection of a gift from the set of gifts from the gifter;electronically transacting for a value associated with the gift;automatically generating a gift message based on the selected giftincluding automatically generating a gift message having a uniqueproduct or service code that corresponds to a product or service of anenabling entity that enables the product or service; and automaticallytransmitting the gift message to pre-stored mobile number associatedwith a mobile device of a designated gift recipient.
 23. The method ofclaim 22, wherein the transacting includes automatically electronicallytransacting for the value associated with the gift by the gifter basedon payment information setup with the host computing environment by thegifter;